from Lexer import *

lista = [
         "Cursos",
         "Cursos.anio",
         "Cursos.materia+Materias.id",
         "Cursos.materia-Materias.id",
         "Cursos.materia\/Materias.id",
         "Cursos.materia/\Materias.id",
         "(Cursos,Materias)",
         "Cursos[anio]",
         "Cursos[anio,semestre]",
         "Cursos[anio*semestre]",
         "Cursos[a:anio,semestre]",
         "Cursos[anio,materia->nombre]",
         "Cursos[@<(anio)]",
         "Cursos[@>(anio)]",
         "Cursos[@+(semestre)]",
         "Cursos[@-(semestre)]",
         "Cursos[#(semestre)]",
         "Cursos[##(anio)]",
         "Cursos[@<(anio),@>(anio),@+(anio),@-(anio)]",
         "Cursos[<: anio,>: semestre]",
         ]

for consulta in lista:
    evalData = None
    a = consulta
    conBD = yacc.parse(a).compilar()
    print a+ " ----> " + conBD
    print ''
    resConsulta = bdConn.consultarBD(conBD)
    for i in resConsulta:
        print i
    raw_input('Enter para continuar')

#a = "(Abdd.a1,Bdad.a2)"; print a+ " ----> " + yacc.parse(a).compilar()
#a = ""; print a+ " ----> " + yacc.parse(a).compilar()

#a = "Tabl:Tabla2.b1"; print a+ " ----> " + yacc.parse(a).compilar()
